test(mcp): stabilize refresh budget synchronization - #3598
Conversation
Generated-by: Codex
There was a problem hiding this comment.
Pull request overview
This pull request stabilizes the MCP refresh-budget E2E test by synchronizing with successful manager refresh publication.
Changes:
- Adds a bounded 30-second test timeout.
- Replaces wall-clock polling with refresh-publication synchronization.
- Retains request-count assertions without changing production behavior.
💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
Hi @Astro-Han, could you please approve the pending GitHub Actions workflow run for this fork PR? The required |
Astro-Han
left a comment
There was a problem hiding this comment.
Reviewed at exact head 6466dbc0aec2a6f7c73fa2080a00bdbf73e9282d. The listener is registered before notification, resolves only on the successful connected-status publication stamped with that iteration’s injected clock, and the exact request-count assertion remains after the publication fence. No P0–P2 findings. Hosted exact-head test is terminal green; local MCP build and full suite are green (171/171), and the focused regression passed 20/20 repeated runs.
Generated-by: Codex
Summary
Make the spaced
list-changedrefresh-budget E2E test wait for the manager's successful refresh publication instead of pollingtools/listrequests against a one-second wall-clock deadline. This keeps the production refresh behavior unchanged while retaining a bounded whole-test timeout for genuine non-convergence.Fixes #3307
Verification
npm run lint— passed (2,623 files)npm run format:check— passed (1,603 files)npm --workspace @maka/mcp run typecheck— passednpm --workspace @maka/mcp run test:dist— passed (171 tests)npm run build— Core, Storage, and MCP passed; the full command stopped in unrelated@maka/runtimecompilation because the shared local dependency tree lacks@slack/web-api/@slack/socket-modeand exposes a mismatchedHttpsProxyAgenttypenpm run typecheck— affected MCP workspace passed; the aggregate command reported the same unrelated local@maka/runtimedependency errors aboveThe pre-change failure is load-sensitive rather than deterministic on every local run; the linked issue records the failing CI run and a code-identical successful rerun.
AI use
Select exactly one:
Tool(s) and scope: OpenAI Codex assisted with diagnosis, the test synchronization change, verification, and PR preparation. The commit carries
Generated-by: Codex; CuSO41108 is the human contributor of record.Checklist
Does this PR entail a change in behavior?